1. Field of the Invention
This invention relates to a servo motor monitoring unit for monitoring a servo motor controller which drives a load, such as a machine tool, and more particularly to a servo motor monitoring unit with a fault detection and cause determination function.
2. Description of the Prior Art
In the prior art, there is known a troubleshooting unit for use with a motor controller (see Japanese Patent Disclosure Publication No. 291682 of 1989) which comprises a plurality of status observers for selectively monitoring control signals, e.g. voltage, current, speed and other signals, and estimating the disturbance torque of a motor in different modes. A fault location is guesstimated from the estimated values. Since such unit employs a plurality of status observers, the constants of the motor must be exactly known. In general, however, the motor constants are easily affected by individual differences and temperature, leading to errors. In addition, what is essential in controlling a servo motor is whether the actual position is tracking the position commands. For this purpose, it is necessary to continuously compare the position command and a position detection feedback signal incoming from a position detector, to provide an alarm such as "excessive error," "excessive deviation," or the like if the difference therebetween is larger than a predetermined threshold value, and to alert the operator to any fault. The above unit, however, does not monitor the position itself, which is an essential factor in monitoring a servo motor.
On the other hand, there is also known prior art for monitoring position. As shown in FIG. 6, a servo motor monitoring unit 601 comprises a counting section 601a for receiving a position command signal P.sub.R and a position detection feedback signal P.sub.F and operating on a difference therebetween, and a range determining section 601b for determining fault if the difference obtained by the counting section 601a is greater than a predetermined threshold value, and outputting a fault alarm such as "excessive error." Referring to FIG. 6, numeral 602 indicates a servo motor, 603 a position detector for detecting the position of the servo motor 602, 604 a position command generator for outputting the position command signal, and 605 a servo controller for controlling the driving of the servo motor 602 in accordance with the position command signal P.sub.R and the position detection feedback signal P.sub.F.
The operation of the unit configured as described above will now be described.
The servo controller 605 compares the position command signal P.sub.R output by the position command generator 604 and the position detector 603 and controls the drive current of the servo motor 602. The position detector 603 outputs the position detection feedback signal P.sub.F in accordance with the operation of the servo motor 602. In the servo motor control system as described above, the position detection feedback signal P.sub.F cannot track the position command signal P.sub.R when: (1) the load is too heavy to generate acceleration; (2) the polarity of the position detection feedback signal P.sub.F from the position detector 603 is reversed; and (3) electrical connections to the servo motor 602 are improper. In any of such cases ((1) to (3)), the servo motor monitoring unit 601 causes the counting section 601a to operate on the difference between the position command signal P.sub.R and the position detection feedback signal P.sub.F, and causes the range determining section 601B to compare that difference with a predetermined threshold value, determine that a fault has occurred if the difference is larger than the threshold value, and output a fault alarm.
FIG. 7 is a flowchart illustrating the sequence of said operation. First, the difference D between the position command signal P.sub.R and the position detection feedback signal P.sub.F is found (step 701). Then, whether the difference D is within the range of the predetermined threshold value is determined (step 702). The fault alarm "excessive error" is output if the difference D is outside the threshold value range (step 703). On the other hand, if the difference D is within that range, the operation returns to step 701 and repeats processing.
The servo motor monitoring unit known in the art may be able to determine the occurrence of a fault in accordance with the difference D between the position command signal P.sub.R and the position detection feedback signal P.sub.F, but cannot determine the cause thereof, i.e. it cannot determine whether the difference D has increased due to insufficient torque because the machine (load) is too heavy or has collided with an obstacle, or due to opposite servo because of incorrect connection to the servo motor, or because the feedback of the equipment has been connected reversely. Hence, when the fault alarm "excessive error" is output, the cause of the fault must be investigated, taking much time.